package com.retailshop.shopuser.mapper;

import com.retailshop.shopuser.entity.*;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;


@Mapper
public interface UserNoMapper {
    int deleteByPrimaryKey(Integer id);

    int insert(UserNo record);

    int insertSelective(UserNo record);

    UserNo selectUser(Integer id);

    UserNo selectByPrimaryKey(Integer id);

    int updateByPrimaryKeySelective(UserNo record);

    int updateByPrimaryKey(UserNo record);

    UserNo selectUserNoByUserNo(String userNo);

    List<UserNo> selectUserNoByUserId(int userId);
    List<UserNo> selectUserNoByList(@Param("noListno") List<String> noListno);
    int selectUserNoCount();

    /**
     * 查找推荐人
     * @param userNoId
     * @return
     */
    List<UserNo> getReCommender(int userNoId);

    UserInfo getUserInfo(int userNoId);

    List<UserSharerInfo> getUserSharesInfo(int userNoId);


    SimpleUserInfo getSimpleUserInfo(int userNoId);

    List<UserNo> selectList();
    List<UserNo> getSupplier();
    int updatSharerTotal(UserNo userNo);

    int updataRE();


    /**
     *  获取用户的多个账号
     * @return
     */
    List<UserNoLoginInfo> getUserNoList(int userNoId);

    /**
     * 根据用户编号查询用户信息和编号信息
     * @param userNo
     * @return
     */
   UserAndUserNoInfo selectUserAndUserNoByNo(String userNo);

    int updateRankId (@Param("rankId") int rankId,@Param("userNoId") int userNoId);

    List<SwitchUserNo> getUserNoListByUserId(@Param("userId") int userId,@Param("userNoId") int userNoId);

    UserNo getUserNoByUserNo(String userNo);

    int findLoginPwd(UserNo record);
}